package javaCode.chapter06;

public class MethodParameter02 {

    public static void main(String[] args) {

        AB ab = new AB();
        int[] arr = {1,2,3};
        ab.test100(arr);
        System.out.println("main的 arr数组");
        //遍历数组
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+"\t");
        }
        System.out.println();

        //测试
        Person02 p = new Person02();
        p.name = "jack";
        p.age = 10;

        ab.test200(p);
        //测试题，如果 test200 执行的是 p=null ，下面的结果为10
        //测试题，如果 test200 执行的是 p=new person();...，下面输出的为?
        System.out.println("main 的p.age="+p.age); //10000
    }
}

class Person02{
    String name;
    int age;
}

class AB {

    public void test200(Person02 p){
        //p.age = 10000; //修改对象属性
        //思考
        //p = null;
        p = new Person02();
        p.age=99;
        p.name="Tom";
    }

    //AB类中编写一个方法test100,
    //可以接收一个数组，在方法中修改数组，看看原来的数组是否变化
    public void test100(int[] arr){
        arr[0] = 200;
        //遍历数组
        System.out.println("test100的 arr数组");
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+"\t");
        }
        System.out.println();
    }


}
